/*
 * OrdenProcesoHelper.java
 *
 * Created on 12 de diciembre de 2006, 05:54 PM
 *
 * To change this template, choose Tools | Options and locate the template under
 * the Source Creation and Management node. Right-click the template and choose
 * Open. You can then make changes to the template in the Source Editor.
 */

package com.src.computec.radar.consultas.ordenproceso.helper;

import com.src.computec.radar.base.dao.exception.DAOException;
import com.src.computec.radar.base.source.CoreSource;
import com.src.computec.radar.base.util.RandomStringUtils;
import com.src.computec.radar.consultas.base.constantes.ConstantesGenerales;
import com.src.computec.radar.consultas.base.helper.BaseHelper;
import com.src.computec.radar.consultas.ordenproceso.dao.BaseOrdenProcesoDAO;
import com.src.computec.radar.consultas.ordenproceso.delegate.OrdenProcesoDelegate;
import com.src.computec.radar.consultas.ordenproceso.dto.BaseClienteDto;
import com.src.computec.radar.consultas.ordenproceso.dto.BusquedaDto;
import com.src.computec.radar.consultas.ordenproceso.exception.OrdenProcesoException;
import com.src.computec.radar.consultas.ordenproceso.utilidades.CreateZipFile;
import com.src.computec.radar.consultas.thread.FileThread;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.sql.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.HSSFColor;

/**
 *
 * @author aocampo
 */
public class OrdenProcesoHelper extends BaseHelper {
    
    /** Creates a new instance of OrdenProcesoHelper */
    public OrdenProcesoHelper() {
    }
    
    public List getDetallesOrdenProcesoByBusqueda(BusquedaDto dto) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getDetallesOrdenProcesoByBusqueda(dto);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getDetallesOrdenProcesoByBusqueda:" + e.toString());
        }
    }
    
    public List getTiposGestionByBusqueda(BusquedaDto dto) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getTiposGestionByBusqueda(dto);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getTiposGestionByBusqueda:" + e.toString());
        }
    }
    
    public List getGestionesByBusqueda(BusquedaDto dto) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getGestionesByBusqueda(dto);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getGestionesByBusqueda:" + e.toString());
        }
    }
    
    public List getGestionImagenesByBusqueda(BusquedaDto dto) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getGestionImagenesByBusqueda(dto);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getGestionImagenesByBusqueda:" + e.toString());
        }
    }
    
    public List getDetallesEmpresaMensajeriaNodoByBusqueda(BusquedaDto dto) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getDetallesEmpresaMensajeriaNodoByBusqueda(dto);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getDetallesEmpresaMensajeriaNodoByBusqueda:" + e.toString());
        }
    }
    
    public List getNumerosOrdenesByBusqueda(BusquedaDto dto) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getNumerosOrdenesByBusqueda(dto);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getNumerosOrdenesByBusqueda:" + e.toString());
        }
    }
    
    public void createNewFileEnviosOrdenesProceso(BusquedaDto dto, String ldapUser) throws OrdenProcesoException {
        try {
            String fileName = ConstantesGenerales.RANDOM_STRING_UTILS.randomAlphanumeric(20) + ConstantesGenerales.FILE_EXTENSION;
            Thread thread = new Thread(new FileThread(FileThread.FILE_ENVIOS_ORDENES_PROCESO, fileName, dto, dto.getCodigoProveedorFilter(), dto.getCodigoNodoFilter(), ldapUser));
            thread.start();
        }
        catch (Exception e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:createNewFileEnviosOrdenesProceso:" + e.toString());
        }
    }
    
    public void insertMensajeAlertaBaseCliente(String fileName, String ldapUser, List lstOrdenes,String part) throws OrdenProcesoException {
	  BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            dao.insertMensajeAlertaBaseCliente(fileName, ldapUser,lstOrdenes,part  );
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:insertMensajeAlertaBaseCliente:" + e.toString());
        }
    }
    
    public List getDetallesOrdenProcesoSecondByBusqueda(BusquedaDto dto) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getDetallesOrdenProcesoSecondByBusqueda(dto);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getDetallesOrdenProcesoSecondByBusqueda:" + e.toString());
        }
    }
    
    public List getDetallesBaseParaClientes(BusquedaDto dto,HashMap pMapClienteOrdenes) throws OrdenProcesoException {
        BaseOrdenProcesoDAO dao = (BaseOrdenProcesoDAO) this.getFactoryDAO().getOrdenProcesoDAO();
        try {
            return dao.getDetallesBaseParaClientes(dto,pMapClienteOrdenes);
        }
        catch (DAOException e) {
            throw new OrdenProcesoException("OrdenProcesoHelper:getDetallesBaseParaClientes:" + e.toString());
        }
    }
     
    public void crearExcelBaseParaComputec(List pCto,BusquedaDto busquedaDtoAux,String pLdpaUser) throws OrdenProcesoException,IOException {
        Date date_=new Date(System.currentTimeMillis());
        DateFormat formatter ;
        formatter = new SimpleDateFormat("dd/MMM/yyyy");
        
        HSSFWorkbook workbookArchivo = new HSSFWorkbook();
	FileOutputStream outputStreamArchivo =null;
	ArrayList zipArray=new ArrayList();
	
	int rownum =  0;
	
	HSSFCellStyle styleHeader=null;
	HSSFCellStyle styleRow =null;
	 // Create a new sheet
	HSSFSheet sheetArchivo = null;
	// Declare a row object reference
	HSSFRow rowArchivo = null;
	// Declare a cell object reference
	HSSFCell cellArchivo = null;
	int numHoja_=1;

	for (Iterator iter_ = pCto.iterator(); iter_.hasNext(); )
        {	    
	 
	    if(rownum==0 || rownum>=50000){
		if(rownum>=50000){
		    
		    workbookArchivo.write(outputStreamArchivo);
		    outputStreamArchivo.close();
		    
		
		    workbookArchivo = new HSSFWorkbook();
		  
		    
		}
		
		String nameArchivo="Base_"+RandomStringUtils.randomAlphanumeric(10)+".xls";        
		String pathArchivo = ConstantesGenerales.PATH_ARCHIVOS_ALERTAS+nameArchivo;
		numHoja_=1;
		// Create a new file
	//      FileOutputStream outputStreamArchivo = new FileOutputStream("C:\\CargueArchivos\\"+pathArchivo);      
		outputStreamArchivo = new FileOutputStream(CoreSource.getInstance().getUtilidadesSetupKey("folderCargueArchivos")+pathArchivo); 
		File toZip=new File(CoreSource.getInstance().getUtilidadesSetupKey("folderCargueArchivos")+pathArchivo);
		zipArray.add(toZip);
		    
		// Create a new workbook
	    
	    
	    
	    
	    ////////////////////////////////////////////////////////////////////////////////////////////////////
	    ///////                   Graba los encabezados del archivo de inconsistencias            //////////
	    ////////////////////////////////////////////////////////////////////////////////////////////////////


	styleHeader = workbookArchivo.createCellStyle();
	//styleHeader.setDataFormat(HSSFDataFormat.getBuiltinFormat("($#,##0_);[Red]($#,##0)"));
	styleHeader.setFillBackgroundColor(HSSFColor.LIGHT_GREEN.index);
	styleHeader.setBorderBottom(HSSFCellStyle.BORDER_MEDIUM);
	styleHeader.setBorderLeft(HSSFCellStyle.BORDER_MEDIUM);  
	styleHeader.setBorderRight(HSSFCellStyle.BORDER_MEDIUM);    
	styleHeader.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
	styleHeader.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);   
	//styleHeader.setFillForegroundColor(HSSFColor.LIGHT_GREEN.index);  
	//styleHeader.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
	styleHeader.setAlignment(HSSFCellStyle.ALIGN_CENTER);


	styleRow = workbookArchivo.createCellStyle();   
	styleRow.setBorderBottom(HSSFCellStyle.BORDER_THIN);
	styleRow.setBorderLeft(HSSFCellStyle.BORDER_THIN);  
	styleRow.setBorderRight(HSSFCellStyle.BORDER_THIN);    
	styleRow.setBorderTop(HSSFCellStyle.BORDER_THIN); 

	HSSFCellStyle styleRowBold = workbookArchivo.createCellStyle();   
	styleRowBold.setBorderBottom(HSSFCellStyle.BORDER_THIN);
	styleRowBold.setBorderLeft(HSSFCellStyle.BORDER_THIN);  
	styleRowBold.setBorderRight(HSSFCellStyle.BORDER_THIN);    
	styleRowBold.setBorderTop(HSSFCellStyle.BORDER_THIN); 

	HSSFFont fontRowNormalBold = workbookArchivo.createFont();
	fontRowNormalBold.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
	fontRowNormalBold.setColor(HSSFColor.BLACK.index);
	styleRowBold.setFont(fontRowNormalBold);
	styleHeader.setFont(fontRowNormalBold);
     
        
	HSSFCellStyle currentStyle=styleRow;
		rownum= 0;
		    sheetArchivo = workbookArchivo.createSheet("BASE-"+numHoja_);
		    numHoja_++;
		    rowArchivo = sheetArchivo.createRow(rownum);

		 int indx=0;

		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*40));     
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*25));  
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*35));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*45));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*45));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*35));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*25));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*25));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*20));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));

		 indx=0;
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CODIGO BARRAS"));	
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("COD.INTERNO CLIENTE"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NUMERO IDENTIFICACION"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NOMBRE DESTINATARIO"));
		    cellArchivo = rowArchivo.createCell( (short) indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("DIRECCION DESTINATARIO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("UBICACION ORIGINAL"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TELEFONO DESTINATARIO"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("GESTION"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TIPO GESTION"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("FECHA ULTIMA GESTION"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("REGIONAL"));
		    
		    
		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TIPO ENVIO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("IDENTIFICACION ABONADO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NOMBRE ABONADO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TELEFONO ABONADO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NUMERO DOCUMENTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CODIGO OFICINA"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NOMBRE OFICINA"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CLIENTE"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("PRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("SEGMENTO PRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("SUBPRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("SEGMENTO SUBPRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CICLO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NUMERO ORDEN"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("FECHA PROCESO"));
		    
		   cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("PROBABILIDAD ENTREGA"));
		    
		    rownum++;
	    }
	    BaseClienteDto cto_=(BaseClienteDto)iter_.next();	    	  
		
            rowArchivo = sheetArchivo.createRow(rownum);                      
            // Create a cell
            int index_=0;
            cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCodigoBarras()));
           // cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCodigoInternoCliente()));
        //    cellArchivo.setCellStyle(currentStyle);
            
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroIdentificacion()));
          //  cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreDestinatario()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDireccionDestinarario()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getSitioOriginal()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getTelefonoDestinatario()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreGestion()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreTipoGestion()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(formatter.format(cto_.getFechaUltimaGestion())));
           // cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionRegional()));
      //      cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getTipoEnvio()));
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroIdentificacionAbonado()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreAbonado()));
         //   cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getTelefonoAbonado()));
          //  cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroDocumento()));
           // cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCodigoOficina()));
          //  cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreOficina()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getRazonSocial()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionProducto()));
        //   cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionSegmentoProducto()));
      //      cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionSubproducto()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionSegmentoSubproducto()));
//  
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCiclo()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroOrden()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(formatter.format(cto_.getFechaProceso())));
	    
	 cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getProbabilidadEntrega()+"%"));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    rownum++;
	
	   
	  
        }
	    workbookArchivo.write(outputStreamArchivo);
	    outputStreamArchivo.close();
		    
		    
	    int totalZips=zipArray.size();
	    int part=1;
		    
	OrdenProcesoDelegate ordenProcesoDelegate = new OrdenProcesoDelegate();
	
	for(Iterator it=zipArray.iterator();it.hasNext();)	    {
	    String nameArchivo="ZIP_"+RandomStringUtils.randomAlphanumeric(10)+".zip";        
	    String pathArchivo = ConstantesGenerales.PATH_ARCHIVOS_ALERTAS+nameArchivo;   
	    File zipPath=new File(CoreSource.getInstance().getUtilidadesSetupKey("folderCargueArchivos")+pathArchivo);
	    zipPath.createNewFile();
	    CreateZipFile zipper=new CreateZipFile();
	    File file = (File) it.next();
	    zipper.createZipArchive(zipPath, file);
            file.delete();
	    List lstOrdenes=null;
	    
	    if(busquedaDtoAux.getListNumerosOrdenes()!=null && busquedaDtoAux.getListNumerosOrdenes().size()>0){
		lstOrdenes=busquedaDtoAux.getListNumerosOrdenes();
	    }else{
		lstOrdenes=new ArrayList();
		lstOrdenes.add(busquedaDtoAux.getNumeroOrden()!=null?busquedaDtoAux.getNumeroOrden():"");
	    }
	    
//	    try{
		    this.insertMensajeAlertaBaseCliente(nameArchivo, pLdpaUser, lstOrdenes, part+" de "+totalZips);
	        part++;
//	    }catch(OrdenProcesoException oex){
//		oex.printStackTrace();
//		this.setMensajeAlert("error", "Error", ConsultasSource.getInstance().getConsultasMessagesSetupKey("ErrorSistema"), true);
//		this.getSessionBeanEstadoOrdenProceso().setRenderedMensajeAlertGridPanel(true);
//	    }catch(Exception ex){
//		ex.printStackTrace();
//		this.setMensajeAlert("error", "Error", ConsultasSource.getInstance().getConsultasMessagesSetupKey("ErrorSistema"), true);
//		this.getSessionBeanEstadoOrdenProceso().setRenderedMensajeAlertGridPanel(true);
//	    }
	    
	}

    // return nameArchivo;
    }   
     
    public void crearExcelBaseParaClientes(List pCto,BusquedaDto busquedaDtoAux,String pLdpaUser) throws OrdenProcesoException,IOException {
        Date date_=new Date(System.currentTimeMillis());
        DateFormat formatter ;
        formatter = new SimpleDateFormat("dd/MMM/yyyy");
        
        HSSFWorkbook workbookArchivo = new HSSFWorkbook();
	FileOutputStream outputStreamArchivo =null;
	ArrayList zipArray=new ArrayList();
	
	int rownum =  0;
	
	HSSFCellStyle styleHeader=null;
	HSSFCellStyle styleRow =null;
	 // Create a new sheet
	HSSFSheet sheetArchivo = null;
	// Declare a row object reference
	HSSFRow rowArchivo = null;
	// Declare a cell object reference
	HSSFCell cellArchivo = null;
	int numHoja_=1;

	for (Iterator iter_ = pCto.iterator(); iter_.hasNext(); )
        {	    
	 
	    if(rownum==0 || rownum>=50000){
		if(rownum>=50000){
		    
		    workbookArchivo.write(outputStreamArchivo);
		    outputStreamArchivo.close();
		    
		
		    workbookArchivo = new HSSFWorkbook();
		  
		    
		}
		
		String nameArchivo="Base_"+RandomStringUtils.randomAlphanumeric(10)+".xls";        
		String pathArchivo = ConstantesGenerales.PATH_ARCHIVOS_ALERTAS+nameArchivo;
		numHoja_=1;
		// Create a new file
	//      FileOutputStream outputStreamArchivo = new FileOutputStream("C:\\CargueArchivos\\"+pathArchivo);      
		outputStreamArchivo = new FileOutputStream(CoreSource.getInstance().getUtilidadesSetupKey("folderCargueArchivos")+pathArchivo); 
		File toZip=new File(CoreSource.getInstance().getUtilidadesSetupKey("folderCargueArchivos")+pathArchivo);
		zipArray.add(toZip);
		    
		// Create a new workbook
	    
	    
	    
	    
	    ////////////////////////////////////////////////////////////////////////////////////////////////////
	    ///////                   Graba los encabezados del archivo de inconsistencias            //////////
	    ////////////////////////////////////////////////////////////////////////////////////////////////////


	styleHeader = workbookArchivo.createCellStyle();
	//styleHeader.setDataFormat(HSSFDataFormat.getBuiltinFormat("($#,##0_);[Red]($#,##0)"));
	styleHeader.setFillBackgroundColor(HSSFColor.LIGHT_GREEN.index);
	styleHeader.setBorderBottom(HSSFCellStyle.BORDER_MEDIUM);
	styleHeader.setBorderLeft(HSSFCellStyle.BORDER_MEDIUM);  
	styleHeader.setBorderRight(HSSFCellStyle.BORDER_MEDIUM);    
	styleHeader.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
	styleHeader.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);   
	//styleHeader.setFillForegroundColor(HSSFColor.LIGHT_GREEN.index);  
	//styleHeader.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
	styleHeader.setAlignment(HSSFCellStyle.ALIGN_CENTER);


	styleRow = workbookArchivo.createCellStyle();   
	styleRow.setBorderBottom(HSSFCellStyle.BORDER_THIN);
	styleRow.setBorderLeft(HSSFCellStyle.BORDER_THIN);  
	styleRow.setBorderRight(HSSFCellStyle.BORDER_THIN);    
	styleRow.setBorderTop(HSSFCellStyle.BORDER_THIN); 

	HSSFCellStyle styleRowBold = workbookArchivo.createCellStyle();   
	styleRowBold.setBorderBottom(HSSFCellStyle.BORDER_THIN);
	styleRowBold.setBorderLeft(HSSFCellStyle.BORDER_THIN);  
	styleRowBold.setBorderRight(HSSFCellStyle.BORDER_THIN);    
	styleRowBold.setBorderTop(HSSFCellStyle.BORDER_THIN); 

	HSSFFont fontRowNormalBold = workbookArchivo.createFont();
	fontRowNormalBold.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
	fontRowNormalBold.setColor(HSSFColor.BLACK.index);
	styleRowBold.setFont(fontRowNormalBold);
	styleHeader.setFont(fontRowNormalBold);
     
        
	HSSFCellStyle currentStyle=styleRow;
		rownum= 0;
		    sheetArchivo = workbookArchivo.createSheet("BASE-"+numHoja_);
		    numHoja_++;
		    rowArchivo = sheetArchivo.createRow(rownum);

		 int indx=0;

		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*40));     
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*25));  
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*35));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*45));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*45));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*35));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*25));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*25));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*20));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		 sheetArchivo.setColumnWidth((short)indx++, (short) (256*30));
		

		 indx=0;
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CODIGO BARRAS"));	
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("COD.INTERNO CLIENTE"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NUMERO IDENTIFICACION"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NOMBRE DESTINATARIO"));
		    cellArchivo = rowArchivo.createCell( (short) indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("DIRECCION DESTINATARIO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("UBICACION ORIGINAL"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TELEFONO DESTINATARIO"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("GESTION"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TIPO GESTION"));
		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("FECHA ULTIMA GESTION"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("REGIONAL"));
		    
		    
		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TIPO ENVIO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("IDENTIFICACION ABONADO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NOMBRE ABONADO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("TELEFONO ABONADO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NUMERO DOCUMENTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++ );
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CODIGO OFICINA"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NOMBRE OFICINA"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CLIENTE"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("PRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("SEGMENTO PRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("SUBPRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("SEGMENTO SUBPRODUCTO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("CICLO"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("NUMERO ORDEN"));

		    cellArchivo = rowArchivo.createCell( (short)indx++);
		    cellArchivo.setCellStyle(styleHeader);
		    cellArchivo.setCellValue( new HSSFRichTextString("FECHA PROCESO"));	    
		   
		    
		    rownum++;
	    }
	    BaseClienteDto cto_=(BaseClienteDto)iter_.next();	    	  
		
            rowArchivo = sheetArchivo.createRow(rownum);                      
            // Create a cell
            int index_=0;
            cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCodigoBarras()));
           // cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCodigoInternoCliente()));
        //    cellArchivo.setCellStyle(currentStyle);
            
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroIdentificacion()));
          //  cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreDestinatario()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDireccionDestinarario()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getSitioOriginal()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getTelefonoDestinatario()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreGestion()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreTipoGestion()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(formatter.format(cto_.getFechaUltimaGestion())));
           // cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionRegional()));
      //      cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getTipoEnvio()));
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroIdentificacionAbonado()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreAbonado()));
         //   cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getTelefonoAbonado()));
          //  cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroDocumento()));
           // cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCodigoOficina()));
          //  cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNombreOficina()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getRazonSocial()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionProducto()));
        //   cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionSegmentoProducto()));
      //      cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionSubproducto()));
       //     cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getDescripcionSegmentoSubproducto()));
//  
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getCiclo()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(cto_.getNumeroOrden()));
        //    cellArchivo.setCellStyle(currentStyle);
	    
	    cellArchivo = rowArchivo.createCell((short)index_++);         
            cellArchivo.setCellValue(new HSSFRichTextString(formatter.format(cto_.getFechaProceso())));
	    
	
	    
	    rownum++;
	
	   
	  
        }
	    workbookArchivo.write(outputStreamArchivo);
	    outputStreamArchivo.close();
		    
		    
	    int totalZips=zipArray.size();
	    int part=1;
		    
	OrdenProcesoDelegate ordenProcesoDelegate = new OrdenProcesoDelegate();

	for(Iterator it=zipArray.iterator();it.hasNext();)	    {
	    String nameArchivo="ZIP_"+RandomStringUtils.randomAlphanumeric(10)+".zip";        
	    String pathArchivo = ConstantesGenerales.PATH_ARCHIVOS_ALERTAS+nameArchivo;   
	    File zipPath=new File(CoreSource.getInstance().getUtilidadesSetupKey("folderCargueArchivos")+pathArchivo);
	    zipPath.createNewFile();
	    CreateZipFile zipper=new CreateZipFile();
	    File file = (File) it.next();
	    zipper.createZipArchive(zipPath, file);
            file.delete();
	    List lstOrdenes=null;
	    
	    if(busquedaDtoAux.getListNumerosOrdenes()!=null && busquedaDtoAux.getListNumerosOrdenes().size()>0){
		lstOrdenes=busquedaDtoAux.getListNumerosOrdenes();
	    }else{
		lstOrdenes=new ArrayList();
		lstOrdenes.add(busquedaDtoAux.getNumeroOrden()!=null?busquedaDtoAux.getNumeroOrden():"");
	    }
	    
//	    try{
		    this.insertMensajeAlertaBaseCliente(nameArchivo, pLdpaUser, lstOrdenes, part+" de "+totalZips);
	        part++;
//	    }catch(OrdenProcesoException oex){
//		oex.printStackTrace();
//		this.setMensajeAlert("error", "Error", ConsultasSource.getInstance().getConsultasMessagesSetupKey("ErrorSistema"), true);
//		this.getSessionBeanEstadoOrdenProceso().setRenderedMensajeAlertGridPanel(true);
//	    }catch(Exception ex){
//		ex.printStackTrace();
//		this.setMensajeAlert("error", "Error", ConsultasSource.getInstance().getConsultasMessagesSetupKey("ErrorSistema"), true);
//		this.getSessionBeanEstadoOrdenProceso().setRenderedMensajeAlertGridPanel(true);
//	    }   
	}
    // return nameArchivo;
    }   
}